package settings

import (
	"fmt"

	"github.com/fsnotify/fsnotify"

	"github.com/spf13/viper"
)

func Init(filePath string) (err error) {
	//换种命令行传参方式 获取配置文件
	viper.SetConfigFile(filePath)

	//viper.SetConfigName("config") //指定配置文件，不带后缀
	//viper.SetConfigType("yaml")   //指定配置文件类型
	//viper.AddConfigPath(".")   //指定查找文件路径
	err = viper.ReadInConfig() // 读取配置信息
	if err != nil {
		//读取信息配置失败
		fmt.Errorf("Fatal error config file: %s \n", err)
		return
	}
	viper.WatchConfig() //热加载配置信息
	viper.OnConfigChange(func(in fsnotify.Event) {
		fmt.Println("配置被修改了")
	})

	return
}
